/**
 * \file VcuComm_Types.h
 * \copyright UDAN Co.,Ltd. *
 *
 * \brief 整车通信类型定义头文件.
 *
 * * \par 修订历史:
 * | 版本号 | 修订日志 | 修改人 | 修订时间 |
 * | :--- | :--- | :--- | :--- |
 * | 0.1 | 初始版本, 完成讨论部分的定义. | UD00004 | 20170316 |
 */

/**
 * \addtogroup VcuComm 整车通信
 * \{
 */


#ifndef VCUCOMM_TYPES_H_
#define VCUCOMM_TYPES_H_

/**
 * \brief 整车通信IPdu类型定义
 * \notes 发送报文优先
 */
typedef enum _VcuComm_IPduType{
    //TX IPDU
    VCUCOMM_TX_IPDU_START = 0,
    VCUCOMM_TX_IPDU_MSG_0x1E1 = 1, /**< 整车通信发送0x1E1报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x1E4 = 2, /**< 整车通信发送0x1E4报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x1F5 = 3, /**< 整车通信发送0x1F5报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x1F3 = 4, /**< 整车通信发送0x1F3报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x211 = 5, /**< 整车通信发送0x211报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x351 = 6, /**< 整车通信发送0x351报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x352 = 7, /**< 整车通信发送0x352报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x353 = 8, /**< 整车通信发送0x353报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x354 = 9, /**< 整车通信发送0x354报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x355 = 10, /**< 整车通信发送0x355报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x356 = 11, /**< 整车通信发送0x356报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x357 = 12, /**< 整车通信发送0x357报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x3F3 = 13, /**< 整车通信发送0x3F3报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x3F4 = 14, /**< 整车通信发送0x3F3报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x3F5 = 15, /**< 整车通信发送0x3F3报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x3F6 = 16, /**< 整车通信发送0x3F6报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x3FF = 17, /**< 整车通信发送0x3FF报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x1F4 = 18, /**< 整车通信发送0x1F4报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x201 = 19, /**< 整车通信发送0x201报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x360 = 20, /**< 整车通信发送0x360报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x361 = 21, /**< 整车通信发送0x361报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x358 = 22, /**< 整车通信发送0x202报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x202 = 23, /**< 整车通信发送0x202报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x203 = 24, /**< 整车通信发送0x203报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x204 = 25, /**< 整车通信发送0x204报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x205 = 26, /**< 整车通信发送0x205报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x206 = 27, /**< 整车通信发送0x206报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x207 = 28, /**< 整车通信发送0x207报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x208 = 29, /**< 整车通信发送0x208报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x390 = 30, /**< 整车通信发送0x390报文IPdu */
    VCUCOMM_TX_IPDU_MSG_0x391 = 31, /**< 整车通信发送0x391报文IPdu */
    VCUCOMM_TX_IPDU_STOP = VCUCOMM_TX_IPDU_MSG_0x391,

    //RX IPDU
    VCUCOMM_RX_IPDU_START = 32,
    VCUCOMM_RX_IPDU_MSG_0x160 = VCUCOMM_RX_IPDU_START, /**< 整车通信接收0x160报文IPdu */
    VCUCOMM_RX_IPDU_STOP = VCUCOMM_RX_IPDU_MSG_0x160,

    VCUCOMM_IPDU_INVALID = 0xFF, /**< 无效IPDU */
}VcuComm_IPduType;


typedef enum _VcuComm_StageType{
    VCUCOMM_STAGE_IDLE = 0, /**< 空闲状态 */
    
    VCUCOMM_STAGE_START = 1,
    VCUCOMM_STAGE_STAGE1 = VCUCOMM_STAGE_START, /**< 整车通信 */
    VCUCOMM_STAGE_STOP = VCUCOMM_STAGE_STAGE1,

    VCUCOMM_STAGE_MAX = 2
}VcuComm_StageType;


#endif



/**
 * \}
 */